/**
 * Generali Solutions d'assurances - Tous droits rÃ©servÃ©s &copy; 2007 - 2010
 */
package fr.generali.accueilclient.contrat.builder;

import fr.generali.accueilclient.contrat.om.IConsultContrat;

/**
 * @author Holmes Kelly
 */
public interface IConsultContratBuilder {

    /**
     * Chaine 1
     */
    String CHAINE_1 = "1";

    /**
     * Chaine 2
     */
    String CHAINE_2 = "2";

    /**
     * Chaine 3
     */
    String CHAINE_3 = "3";

    /**
     * Chaine 6
     */
    String CHAINE_6 = "6";

    /**
     * PrÃ©lÃ¨vement Compagnie
     */
    String PRELEVEMENT_COMPAGNIE = "PrÃ©lÃ¨vement Compagnie";

    /**
     * PrÃ©lÃ¨vement Agence
     */
    String PRELEVEMENT_AGENCE = "PrÃ©lÃ¨vement Agence";

    /**
     * Autre (TIP Compagnie)
     */
    String PAIEMENT_PAR_TIP_SIEGE = "Autre (TIP Compagnie)";

    /**
     * Autre (Agence)
     */
    String PAIEMENT_PAR_TIP_AGENCE = "Autre (Agence)";

    /**
     * numeroContrat the numeroContrat to build
     */
    void buildNumeroContrat();

    /**
     * systemeOrigine the systemeOrigine to build
     */
    void buildSystemeOrigine();

    /**
     * societeDuGroupe the societeDuGroupe to build
     */
    void buildSocieteDuGroupe();

    /**
     * @param codeProduit the codeProduit to build
     */
    void buildCodeProduit();

    /**
     * categorieStatistique the categorieStatistique to build
     */
    void buildCategorieStatistique();

    /**
     * codeSituation the codeSituation to build
     */
    void buildCodeSituation();

    /**
     * modePrelevement the modePrelevement to build
     */
    void buildModePrelevement();

    /**
     * natureRecouvrement the natureRecouvrement to build
     */
    void buildNatureRecouvrement();

    /**
     * libelleModePrelevement the libelleModePrelevement to build
     */
    void buildLibelleModePrelevement();

    /**
     * numOrdreRIB the numOrdreRIB to build
     */
    void buildNumOrdreRIB();

    /**
     * identifiantRIB the identifiantRIB to build
     */
    void buildIdentifiantRIB();

    /**
     * numOrdreAdresse the numOrdreAdresse to build
     */
    void buildNumOrdreAdresse();

    /**
     * adresseSelected the adresseSelected to build
     */
    void buildAdresseSelected();

    /**
     * ribSelected the ribSelected to build
     */
    void buildRibSelected();

    /**
     * propag the propag to build
     */
    void buildPropag();

    /**
     * souscripteur the souscripteur to build
     */
    void buildSouscripteur();

    /**
     * payeur the payeur to build
     */
    void buildPayeur();

    /**
     * @return consultcontrat
     */
    IConsultContrat getConsultContrat();
}
